package com.dhl.fin.api.dto;

import com.dhl.fin.api.common.util.ObjectUtil;
import com.dhl.fin.api.domain.ExtraJobCron;
import com.dhl.fin.api.domain.MensesRemindTask;
import com.dhl.fin.api.domain.RemindTask;
import lombok.Data;

/**
 * @author CuiJianbo
 * @since 2025/5/14
 */
@Data
public class CronJobFunctionParamDTO {

    Long taskId;

    Long mensesTaskId;

    Long extraJobTaskId;

    public static CronJobFunctionParamDTO getInstance(RemindTask remindTask, ExtraJobCron extraJobCron) {
        CronJobFunctionParamDTO cronJobFunctionParamDTO = new CronJobFunctionParamDTO();
        if (ObjectUtil.notNull(remindTask)) {
            cronJobFunctionParamDTO.setTaskId(remindTask.getId());
        }
        if (ObjectUtil.notNull(extraJobCron)) {
            cronJobFunctionParamDTO.setExtraJobTaskId(extraJobCron.getId());
        }
        return cronJobFunctionParamDTO;
    }

    public static CronJobFunctionParamDTO getInstance(MensesRemindTask mensesRemindTask, ExtraJobCron extraJobCron) {
        CronJobFunctionParamDTO cronJobFunctionParamDTO = new CronJobFunctionParamDTO();
        if (ObjectUtil.notNull(mensesRemindTask)) {
            cronJobFunctionParamDTO.setMensesTaskId(mensesRemindTask.getId());
        }
        if (ObjectUtil.notNull(extraJobCron)) {
            cronJobFunctionParamDTO.setExtraJobTaskId(extraJobCron.getId());
        }
        return cronJobFunctionParamDTO;
    }

}
